package com.hanamaki.study.day01;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class FireFoxDriverTestNg05 {

    /* WebDriver 代表 浏览器 对象 */
    WebDriver driver;

    @BeforeClass
    public void setUp() {
        /* 1. 注册驱动的位置  */
        System.setProperty("webdriver.gecko.driver", "C:\\Program Files\\Mozilla Firefox\\geckodriver.exe");

        /* 2, 注册驱动 */
        driver = new FirefoxDriver();

    }

    @Test
    public void firefox() {
        /* 打开网址测试  */
        driver.get("file:///E:/testhtml/exam/login.html");
        /* 向 用户名或者密码中 填写数据 */
        WebElement username = driver.findElement(By.name("username"));
        username.sendKeys("hanamaki");

        WebElement password = driver.findElement(By.name("password"));
        password.sendKeys("123456");

        /* 如果 提交按钮被禁用  自动化脚本是不能去提交的 */
        WebElement element = driver.findElement(By.xpath("//input[@type='submit']"));
        /* 如果一个按钮能点击我们可以使用 click 方法   那么如果一个按钮不能被点击  要使用  submit方法  */
        System.out.println(element.isDisplayed() == true ? "被禁用" : "没有被禁用");
        if (element.isDisplayed()) {
            /* 被禁用 */
            /* 那么如果一个按钮不能被点击  要使用  submit方法   这个方法是针对于 表单中的 文本框来实现 */
            username.submit(); /* 使用 submit 方法  只需要在表单中有一个文本框使用 表单中的所有的值都会被提交 */

        } else {
            /* 没有被禁用 */
            element.click();
        }
    }

}
